//package com.arcvideo.acsconnect.ui.activity;
//
//import android.content.Context;
//import android.content.Intent;
//import android.net.Uri;
//import android.text.TextUtils;
//import android.view.View;
//import android.widget.TextView;
//
//import com.arcvideo.acsconnect.app.UserDataCenter;
//import com.arcvideo.acsconnect.eventbus.WxLoginEvent;
//import com.arcvideo.acsconnect.helper.WXClient;
//import com.arcvideo.acsconnect.rest.model.WXUserInfo;
//import com.arcvideo.acsconnect.ui.MainActivity;
//import com.arcvideo.acsconnect.ui.presenter.LoginPresenter;
//import com.arcvideo.acsconnect.ui.view.LoginView;
//import com.arcvideo.acsconnect.utils.ConfigUtil;
//import com.arcvideo.rtcmessage.utils.LogUtil;
//import com.arcvideo.tyingyitonginhouse.R;
//import com.framework.core.mvp.TitlePresenterActivity;
//
//import org.greenrobot.eventbus.EventBus;
//import org.greenrobot.eventbus.Subscribe;
//import org.greenrobot.eventbus.ThreadMode;
//
//import butterknife.BindView;
//import butterknife.OnClick;
//
//public class LoginActivity extends TitlePresenterActivity<LoginPresenter> implements LoginView {
//
//    private final static String TAG = LoginActivity.class.getSimpleName();
//
//    LoginPresenter mLoginPresenter = new LoginPresenter();
//    @BindView(R.id.tv_test_login)
//    TextView mTvTestLogin;
//
////    @BindView(R.id.tv_weixin_login)
////    TextView mTvWeixinLogin;
//
//    private String mSessionId;
//
//    private long mClickTime = -1;
//
//    public static void launch(Context context) {
//        Intent intent = new Intent(context, LoginActivity.class);
//        context.startActivity(intent);
//    }
//
//    @Override
//    public void initActivity(View view) {
//        super.initActivity(view);
//        LogUtil.dFormat("LoginActivity initActivity taskId = " + getTaskId());
//        showContent();
//        dismissToolbar();
//        Intent intent = getIntent();
//        if (null != intent) {
//            mSessionId = getSessionId(intent);
//        }
//        if (checkLogin()) {
//            toMainActivity();
//        }
//        EventBus.getDefault().register(this);
//        if (ConfigUtil.isRelease()) {
//            mTvTestLogin.setVisibility(View.GONE);
//        } else {
//            mTvTestLogin.setVisibility(View.VISIBLE);
//        }
//
//        WXUserInfo wxUserInfo = UserDataCenter.getInstance().getUserInfoBean();
//        if (null == wxUserInfo || TextUtils.isEmpty(wxUserInfo.getNickname())) {
//            wxUserInfo = new WXUserInfo();
//            wxUserInfo.setNickname("陈大爷8888");
//            wxUserInfo.setUnionid(System.currentTimeMillis() + "");
//        }
//        UserDataCenter.getInstance().setUserInfoBean(wxUserInfo);
//        toMainActivity();
//        UserDataCenter.sIsWxLogin = false;
//    }
//
//    private String getSessionId(Intent intent) {
//        Uri uri = intent.getData();
//        if (null != uri) {
//            mSessionId = uri.getQueryParameter("sessionid");
//        }
//        LogUtil.dFormat(TAG, "sessionid = " + mSessionId);
//        return mSessionId;
//    }
//
//    @Override
//    public LoginPresenter getPresenter() {
//        return mLoginPresenter;
//    }
//
//    @Override
//    public int inflateContentView() {
//        return R.layout.activity_login;
//    }
//
//    @OnClick({R.id.iv_weixin_login, R.id.tv_test_login})
//    public void onClick(View view) {
//        switch (view.getId()) {
//            case R.id.iv_weixin_login:
////                GlobalConstant.sIsTestLogin = false;
//                if (checkClickTime()) {
//                    WXClient.wxLogin();
//                }
//                break;
//            case R.id.tv_test_login:
////                GlobalConstant.sIsTestLogin = true;
//                WXUserInfo wxUserInfo = new WXUserInfo();
//                wxUserInfo.setNickname("Android测试" + System.currentTimeMillis());
//                wxUserInfo.setUnionid(System.currentTimeMillis() + "");
//                UserDataCenter.getInstance().setUserInfoBean(wxUserInfo);
//                toMainActivity();
//                UserDataCenter.sIsWxLogin = false;
//                break;
//            default:
//                break;
//        }
//    }
//
//    @Override
//    protected void onNewIntent(Intent intent) {
//        super.onNewIntent(intent);
//        LogUtil.dFormat("LoginActivity onNewIntent taskId = " + getTaskId());
//        if (null != intent) {
//            mSessionId = getSessionId(intent);
//        }
//        if (checkLogin()) {
//            toMainActivity();
//        }
//    }
//
//    @Override
//    protected void onDestroy() {
//        super.onDestroy();
//        EventBus.getDefault().unregister(this);
//    }
//
//    @Subscribe(threadMode = ThreadMode.MAIN)
//    public void onMessageEvent(WxLoginEvent event) {
//        String code = event.getCode();
//        if (!TextUtils.isEmpty(code)) {
//            mPresenter.getUserInfo(code);
//        }
//    }
//
//    @Override
//    public void onBackPressed() {
////        super.onBackPressed();
//        backToHome();
//    }
//
//    private void backToHome() {
//        Intent intent = new Intent(Intent.ACTION_MAIN);
//        intent.addCategory(Intent.CATEGORY_HOME);
//        startActivity(intent);
//    }
//
//    private boolean checkClickTime() {
//        long currentTime = System.currentTimeMillis();
//        if (mClickTime != -1) {
//            if (currentTime - mClickTime < 2000) {
//                return false;
//            }
//        }
//        mClickTime = currentTime;
//        return true;
//    }
//
//    private boolean checkLogin() {
//        WXUserInfo wxUserInfo = UserDataCenter.getInstance().getUserInfoBean();
//        if (null != wxUserInfo
//                && !TextUtils.isEmpty(wxUserInfo.getUnionid())
//                && !TextUtils.isEmpty(wxUserInfo.getNickname())) {
//            return true;
//        }
//        return false;
//    }
//
//    @Override
//    public void getUserInfoSuccess(WXUserInfo wxUserInfo) {
//        toMainActivity();
//    }
//
//    private void toMainActivity() {
//        boolean isJoinSession = false;
//        if (!TextUtils.isEmpty(mSessionId)) {
//            isJoinSession = true;
//        }
//        MainActivity.launch(this, mSessionId, isJoinSession);
//        finish();
//    }
//
//}